package com.example.xiaomiao.Util;

import cn.hutool.core.util.StrUtil;
import com.fasterxml.jackson.databind.JsonNode;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import static com.example.xiaomiao.Util.RegexPatterns.*;

public class RegexUtils {
    /**
     * 是否是无效手机格式
     * @param phone 要校验的手机号
     * @return true:符合，false：不符合
     */
    public static boolean isPhoneInvalid(String phone){
        return mismatch(phone, RegexPatterns.PHONE_REGEX);
    }

    // 校验是否不符合正则格式
    private static boolean mismatch(String str, String regex){
        if (StrUtil.isBlank(str)) {
            return true;
        }
        return !str.matches(regex);
    }

    public static int getPictureId(String url){
        // 创建 Pattern 和 Matcher 对象
        Pattern pattern = Pattern.compile(PICTURE_URL_REGEX);
        Matcher matcher = pattern.matcher(url);

        // 如果匹配成功，则提取 picture_id 并转换为 int
        if (matcher.find()) {
            String pictureIdStr = matcher.group(1);  // 提取 picture_id 部分
            try {
                return Integer.parseInt(pictureIdStr);  // 将字符串转换为 int 并返回
            } catch (NumberFormatException e) {
                System.out.println("Invalid picture_id format");
            }
        }
        // 如果未匹配到 picture_id 或解析失败，返回 -1 表示错误
        return -1;
    }
}
